import re
#pip  包管理工具

r'''
re.match函数
原型：match(pattern, string, flags=0)
参数：
patter:匹配的正则表达式
string:要匹配的字符串
flags:标志位，用于控制正则表达式的匹配方式
re.I    忽略大小写
re.L    做本地化识别
re.M    多行匹配，影响^和$
re.S    是.匹配包括换行符在内的所有内容
re.U    根据Unicode字符集解释字符，影响 \w \W \b \B
re.X    使我们以更灵活的格式理解正则表达式

功能：尝试从字符串的起始位置匹配一个模式，如果不是起始位置匹配成功的话，返回None
'''

#www.baidu.com
print(re.match("www", "www.baidu.com").span()) #可以找到www   .span()打印在字符串中的位置
print(re.match("www", "ww.baidu.com"))  #找不到www
print(re.match("www", "baidu.wwwcom"))  #不在字符串开头，无法找到
print(re.match("www", "wwW.baidu.com")) #区分大小写
print(re.match("www", "www.baidu.com", flags=re.I)) #re.忽略大小写,不能用match函数
#扫描整个字符串，返回从起始位置成功的匹配

print("---------------------------------")



'''
re.serch函数
原型：search(pattern, string, flags=0)
参数：
patter:匹配的正则表达式
string:要匹配的字符串
flags:标志位，用于控制正则表达式的匹配方式
功能：扫描整个字符串，并返回第一个成功的匹配
'''
#在整段字符串中，只能返回匹配成功的第一个字符串
print(re.search("sunck", "good man is sunck!sunck is nice"))

print("---------------------------------")
'''
re.findall函数
原型：findall(pattern, string, flags=0)
参数：
patter:匹配的正则表达式
string:要匹配的字符串
flags:标志位，用于控制正则表达式的匹配方式
功能：扫描整个字符串，并返回结果列表
'''

print(re.findall("sunck", "good man is sunck!Sunck is nice", flags=re.I))
